Makra

Co je to makro

Makro je posloupnost p°φkaz∙ editoru. Tuto posloupnost lze zaznamenat a nßsledn∞ opakovan∞ p°ehrßvat. Tφm lze zjednoduÜit opakovanΘ operace (p°φklady pou₧itφ jsou uvedeny nφ₧e)

Jak to pracuje

Stisknutφm tlaΦφtka zßznam (CTRL+F5) se zaΦφnajφ vÜechny operace s textem v editoru zaznamenßvat. P°i zahßjenφ zßznamu se kurzor zm∞nφ na Üipku s kamerou. Zp∞t se zm∞nφ p°i ukonΦenφ nebo p°eruÜenφ nahrßvßnφ.
Po ukonΦenφ zßznamu (ALT+F5) se zßznam ukonΦφ. Objevφ se dialog, ve kterΘm makro pojmenujete, p°i°adφte do jednoho ze 4 pozic a makro je p°ipraveno k pou₧itφ pod p°φsluÜnou klßvesovou zkratkou. Nynφ je mo₧no makro opakovan∞ spouÜt∞t z menu nebo pomocφ klßvesov²ch zkratek F5..F8.
Vytvo°enß makra je mo₧no naΦφtat z disku, editovat a op∞tovn∞ kompilovat. Uklßdajφ se s p°φponou .PMR (PSPad macro record)

Omezenφ

Do makra se nezaznamenßvajφ akce, provedenΘ pomocφ myÜi. OznaΦovßnφ bloku d∞lejte pomocφ SHIFT+Üipky
Makro nepracuje s p°φkazy pro hledßnφ a nahrazenφ textu
DΘlka makra je omezena pouze dostupnou pam∞tφ poΦφtaΦe. Vzhledem k tomu, ₧e jeden zßznam tvo°φ pouze k≤d p°φkazu a znak je velikost tΘm∞° neomezenß. Obsah makra lze od verze 3.3.3 editovat a zp∞t kompilovat. P°ehled dostupn²ch p°φkaz∙ najdete zde.

Editace makra
Pokud si zvolφte menu Nßstroje/Makro/Editace makra, otev°e se vßm nov² soubor s p°φponou .PME. K dispozici je zv²raz≥ovaΦ i Üablona s p°φkazy (Ctrl+Space).
P°φkaz pro vlo₧enφ znaku je nastaven na Ctrl+Enter

DoporuΦuji nßsledujφcφ nastavenφ zv²raz≥ovaΦe pro editaci maker:

Komentß°e      Φernß, font normßlnφ (vklßdanΘ znaky v lomen²ch zßvorkßch)
Identifikßtory Φervenß, font normßlnφ (chybn² p°φkaz bude Φerven∞)
KlφΦovß slova  modrß, font normßlnφ



P°φklady pou₧itφ


P°φklad1:
M∞l jsem text ve tvaru:
21: if KeyComp('del') then Result := tkKey else
21: if KeyComp('start') then Result := tkKey else
90: if KeyComp('findstr') then Result := tkKey else
Pot°eboval jsem smazat v₧dy pro urΦit² poΦet °ßdk∙ prvnφ t°i znaky a vlo₧it jednu mezeru. V tomto p°φpad∞ nelze pou₧φt hledßnφ s nahrazenφm, proto₧e text nenφ stejn². Samoz°ejm∞, ₧e by to Ülo p°es sloupcov² blok odmazat, potom si jako sloupcov² blok oznaΦit prvnφ sloupec mezer a p°es hledat a nahradit jednu mezeru nahradit dv∞mi. Ale je to spousta prßce s myÜφ, p°epφnßnφ blok∙, proto₧e upraven² text pot°ebuji nßsledn∞ umφstit do jinΘho souboru.To je p°esn∞ ta sprßvnß prßce pro MAKRO. Postup zßznamu:
·postavφm se na °ßdek a spustφm zßznam  
·HOME, 3x delete, 1x mezernφk  
·Üipka dol∙  
·ukonΦit zßznam  
Nynφ staΦφ opakovan∞ maΦkat F5 a °ßdky jsou upraveny

P°φklad2:
Pot°ebuji vytvo°it nßsledujφcφ °ßdky
fIdentFuncTable[72] := Func72;
fIdentFuncTable[73] := Func73;
fIdentFuncTable[74] := Func74;

Mohl bych si je kopφrovat a p°episovat Φφsla. M∙₧u ale vyu₧φt MAKRO:
·na °ßdky si zapφÜu 2x za sebou po₧adovanΘ Φφslo (7272, 7373 atd.)  
·postavφm se na °ßdek a zapnu zßznam  
·HOME a napφÜu text: fIdentFuncTable[  
·2x Üipka doprava  
·napφÜu text: ] := Func  
·2x Üipka doprava  
·dopφÜu st°ednφk a Üipka dol∙  
·ukonΦφm zßznam  
MaΦkßm F5 a p°ed oΦima se mi objevujφ po₧adovanΘ °ßdky. ╪ßdk∙ bylo moc a takhle to byla otßzka chvilky bez zbyteΦnΘho najφ₧d∞nφ a p°episovßnφ Φφsel na dvou mφstech v kopφrovan²ch °ßdcφch